AND v StoredProcedure FB

Otázka od: Jan Harman

20. 5. 2004 10:47

Zdravim vsechny,
trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
...
IF (CISLO AND MASKA > 0) THEN neco
...

pise mi ze to "TOKEN UNKNOWN..."
Lze pouzivat AND v stored procedurach a jak?
Dekuji.
Jan Harman


Odpovedá: Miso

20. 5. 2004 11:01


----- Original Message -----
From: "Jan Harman" <jharman@volny.cz>


> Zdravim vsechny,
> trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco
> ...
>
> pise mi ze to "TOKEN UNKNOWN..."
> Lze pouzivat AND v stored procedurach a jak?
> Dekuji.

..asi by si mali pouzit :
IF (CISLO $ MASKA > 0) THEN neco

Miso


Odpovedá: Pavel Malinsky

20. 5. 2004 10:56

> -----Original Message-----
> From: delphi-l-owner@clexpert.cz
> [mailto:delphi-l-owner@clexpert.cz] On Behalf Of Jan Harman
>
> Zdravim vsechny,

  Ahoj,

> trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco

IF ((CISLO > 0) AND (MASKA > 0)) THEN neco

          S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky@pmcom.cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================



Odpovedá: horky@cominn.cz

20. 5. 2004 10:34

> From: Jan Harman [mailto:jharman@volny.cz]
> Sent: Thursday, May 20, 2004 11:09 AM

> trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco
> ...

Jestli jsem to pochopil a AND je spojeni nekolika podminek, tak takto:

IF (CISLO) AND (MASKA > 0) THEN neco

--
S pozdravem Karel Horky, D7, FB 1.0.3, IBX 7.08, WXP SP1
[mailto:horky@cominn.cz]

Odpovedá: Pavel Malinsky

20. 5. 2004 11:18

> -----Original Message-----
> From: delphi-l-owner@clexpert.cz
> [mailto:delphi-l-owner@clexpert.cz] On Behalf Of Pavel Malinsky
>
> > trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> > ...
> > IF (CISLO AND MASKA > 0) THEN neco
>
> IF ((CISLO > 0) AND (MASKA > 0)) THEN neco

Sorry nepochopil sem asi, ze Ti jde o jinej AND  

          S pozdravem a dikem
=====================================
> Pavel Malinsky; malinsky@pmcom.cz <
=====================================
> GSM: 602 652 203 | ICQ: 322015967 <
=====================================



Odpovedá: Pavel Cisar

20. 5. 2004 11:05

Haj hou!

On 20 May 2004 at 11:09, Jan Harman wrote:

> Zdravim vsechny,
> trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco
> ...
>
> pise mi ze to "TOKEN UNKNOWN..."
> Lze pouzivat AND v stored procedurach a jak?

AND lze samozrejme pouzivat, ale jako LOGICKY operator, nikoliv jako
BINARNI. Spravny zapis by tedy byl:

IF (CISLO <logicky_operator> <hodnota> AND MASKA > 0) THEN neco

Pokud potrebujes AND jako binarni operator, je nutne pouzit UDF
(nachazi se v jedne z UDF knihoven dodavanych s FB).

S pozdravem
Pavel Cisar ( ICQ: 89017288)
Mobil: 724 281429
http://www.ibphoenix.cz
Vse co potrebujete pro Firebird a InterBase


Odpovedá: Jan Harman

20. 5. 2004 11:33

> > trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> > ...
> > IF (CISLO AND MASKA > 0) THEN neco
> > ...
>
> Jestli jsem to pochopil a AND je spojeni nekolika podminek, tak takto:
>
> IF (CISLO) AND (MASKA > 0) THEN neco
>

CISLO se maskuje MASKOU a vznikne z toho dalsi cislo, ktere se testuje
jestli je vestsi jak 0. Napr:
IF (33 AND 32 > 0) THEN ..... vysledek je true, protoze 33 AND 32 = 32.


Odpovedá: Kratochvil Radomir

20. 5. 2004 11:32

Jen v pripade ze promenna CISLO je typu Boolean, jinak

IF (CISLO > 0) AND (MASKA > 0) THEN ...

Kratochvil

-----Original Message-----
From: horky@cominn.cz [mailto:horky@cominn.cz]
Sent: Thursday, May 20, 2004 11:23 AM
To: delphi-l@clexpert.cz
Subject: Re: AND v StoredProcedure FB

> From: Jan Harman [mailto:jharman@volny.cz]
> Sent: Thursday, May 20, 2004 11:09 AM

> trapim se tady s pouzitim AND v stored procedure. Mam na mysli toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco
> ...

Jestli jsem to pochopil a AND je spojeni nekolika podminek, tak takto:

IF (CISLO) AND (MASKA > 0) THEN neco

--
S pozdravem Karel Horky, D7, FB 1.0.3, IBX 7.08, WXP SP1
[mailto:horky@cominn.cz]


Odpovedá: Petr Brant

20. 5. 2004 11:10

Napada me jeste, jestli jsi nemyslel treba

IF (CISLO > 0 AND MASKA > 0) THEN neco

Protoze se bezne rika "cislo a maska maji byt > 0", tak jestli jsi to prvni
vetsitko proste jen nezapomnel napsat.

Zdravim

RNDr. Petr Brant [brant@dcomm.cz]
http://web.redbox.cz/petr.brant


> trapim se tady s pouzitim AND v stored procedure. Mam na mysli
toto:
> ...
> IF (CISLO AND MASKA > 0) THEN neco
> ...

 Jestli jsem to pochopil a AND je spojeni nekolika podminek, tak
takto:

 IF (CISLO) AND (MASKA > 0) THEN neco


Odpovedá: Jan Harman

20. 5. 2004 11:51

> > ...
> > IF (CISLO AND MASKA > 0) THEN neco
> > ...
> >
> > pise mi ze to "TOKEN UNKNOWN..."
> > Lze pouzivat AND v stored procedurach a jak?
>
> AND lze samozrejme pouzivat, ale jako LOGICKY operator, nikoliv jako
> BINARNI. Spravny zapis by tedy byl:
>
> IF (CISLO <logicky_operator> <hodnota> AND MASKA > 0) THEN neco
>
> Pokud potrebujes AND jako binarni operator, je nutne pouzit UDF
> (nachazi se v jedne z UDF knihoven dodavanych s FB).
>
Ano, potrebuji to jako binarni operator.
Precetl jsem si v dokumentaci ze existuje BIN_AND, ale kdyz to pouziju, tak
napise ze funkci nezna. Pouzivam FB1.0.3, v adresari "udf" mam knihovnu
ib_udf.dll, ve ktere by to melo byt. Co se proto da udelat? Diky.

Honza


Odpovedá: Pavel Cisar

20. 5. 2004 12:05

Haj hou!

On 20 May 2004 at 12:19, Jan Harman wrote:

> Ano, potrebuji to jako binarni operator.
> Precetl jsem si v dokumentaci ze existuje BIN_AND, ale kdyz to pouziju, tak
> napise ze funkci nezna. Pouzivam FB1.0.3, v adresari "udf" mam knihovnu
> ib_udf.dll, ve ktere by to melo byt. Co se proto da udelat? Diky.


Externi funkce je treba definovat pro kazdou databazi s kterou maji
byt pouzivany. Pro zminenou knihovnu ib_udf.dll je ve stejnem
adresari skript ib_udf.sql, ktery je nutne spustit na danou databazi.
Pak uz to bude fungovat.

S pozdravem
Pavel Cisar ( ICQ: 89017288)
Mobil: 724 281429
http://www.ibphoenix.cz
Vse co potrebujete pro Firebird a InterBase